Method, apparatus, and system for enhancing robustness of predictive video codecs using a side-channel based on distributed source coding techniques

ABSTRACT

A method, apparatus, and system for providing distributed source coding techniques that improve data coding performance, such as video data coding, when channel errors or losses occur. Errors in the reconstruction of the data is eliminated or reduced by sending extra information. Correlation between a predicted sequence and an original sequence can be used to design codebooks and find the cosets required to represent the original image. This information may be sent over another channel, or a secondary channel.

CLAIM OF PRIORITY UNDER 35 U.S.C. §119

The present Application for Patent claims priority to U.S. ProvisionalApplication No. 60/576,193, entitled “METHOD, APPARATUS, AND SYSTEM FORENHANCING ROBUSTNESS OF PREDICTIVE VIDEO CODECS USING A SIDE-CHANNELBASED ON DISTRIBUTED SOURCE CODING TECHNIQUES”, filed Jun. 1, 2004, andassigned to the assignee hereof and hereby expressly incorporated byreference, in its entirety, herein.

REFERENCE TO CO-PENDING APPLICATIONS FOR PATENT

The present Application for Patent is related to the followingco-pending U.S. patent application Ser. No. 10/396,982, entitled“Method, Apparatus and System for Encoding and Decoding Side Informationfor Multimedia Transmission” filed Mar. 24, 2003, assigned to theassignee hereof, and expressly incorporated by reference herein.

BACKGROUND

I. Field

The present invention relates generally to multimedia over error-pronenetworks, and more specifically to video coding and decoding techniquesused in conjunction with multimedia over wireless networks.

II. Background

Current video compression techniques, such as, ITU-T H.263, H.263+,H.263++, ISO MPEG-4 and JVT H.264 have become increasingly efficient incompressing video. The ability to achieve good visual quality atrelatively low bitrates has led to increased popularity of videoapplications in emerging multimedia applications over bandwidth limitedchannels, such as, wireless channels. However, the predictive nature ofcompression techniques employed by current video codecs makes thecompressed video bit-streams very fragile and susceptible to degradationdue to packet losses in the channel.

Channel errors or packet loss can lead to loss of synchronizationbetween a video encoder and a decoder. More specifically, a locallydecoded copy of a reconstructed video frame at the encoder may not matchthe corresponding reconstructed video frame at the decoder. This loss ofsynchronization between a video encoder and a decoder is also sometimestermed “drift” since there will be a drift between the receiver'sdecoder and the sender's decoder. Drift can lead to significant lossesin decoded video quality.

The reduction in decoded quality due to a drift is a direct consequenceof the prediction-based coding that underlies current video codecs. Thatis, to currently decode the current video frame, all previous videoframes need to have been reconstructed correctly. This problem isexacerbated in a wireless channel where packet losses are far morefrequent than in a wire-line network and tend to occur in bursts.

Re-transmission schemes, such as Automatic Repeat Request (ARQ), orForward Error Correction (FEC) schemes have been used to combat driftproblems between the encoder and decoder and thereby alleviate the lossin quality due to packet losses. However, using ARQ or FEC schemes (or acombination of both) may not prove effective since the latencyconstraints of the video application may preclude the use of suchschemes. Moreover, FEC-based schemes cannot guarantee that the data willbe received and if it is not, the drift continues until the nextintra-frame¹ is received.¹An intra-frame is used by video encoders to break the prediction loopand hence stop drift.

The Wyner-Ziv Theorem is discussed in A. D. Wyner and J. Ziv, “The ratedistortion function for source coding with side information at thedecoder,” IEEE Trans. Inf. Theory, vol. 22, pp. 1-10, January 1976. ThisTheorem addresses the problem of source coding with side-information.Consider two correlated sources X and Y. The encoder needs to compressthe source X when only the decoder has access to the source Y. When themean squared error is the distortion measure and X=Y+N where N has aGaussian distribution, the rate—distortion performance for coding X isthe same whether or not the encoder has access to Y.

Recently, based on the principles of source coding with side-informationwithin a Wyner-Ziv framework joint source-channel coding techniques havebeen proposed to address the problem of drift. See, for example, R. Puriand K. Ramchandran, “PRISM: A New Robust Video Coding Architecture basedon Distributed Compression Principles,” in Allerton Conference onCommunication, Control and Computing, 2002; A. Sehgal, A. Jagmohan, andN. Ahuja, “Wyner-ziv Coding of Video: An Error-Resilient CompressionFramework,” IEEE Trans. on Multimedia, vol. 6, pp. 249-258, 2004; A.Aaron, S. Rane, R. Zhang, and B. Girod, “Wyner-Ziv Coding of Video:Applications to compression and error resilience,” in Proc. IEEE DataCompression Conf., 2003; and A. Aaron, S. Rane, D. Rebollo-Monedero, andB. Girod, “Systematic Lossy Forward Error Protection for VideoWaveforms,” in Proc. IEEE Int. Conf. Image Proc., 2003.

The codecs discussed in R. Puri and K. Ramchandran, “PRISM: A New RobustVideo Coding Architecture based on Distributed Compression Principles,”in Allerton Conference on Communication, Control and Computing, 2002;and A. Aaron, S. Rane, R. Zhang, and B. Girod, “Wyner-Ziv Coding ofVideo: Applications to compression and error resilience,” in Proc. IEEEData Compression Conf., 2003, are full-fledged video codecs that eschewthe predictive coding framework.

On the other hand, the codecs discussed in A. Sehgal, A. Jagmohan, andN. Ahuja, “Wyner-ziv Coding of Video: An Error-Resilient CompressionFramework,” IEEE Trans. on Multimedia, vol. 6, pp. 249-258, 2004; and A.Aaron, S. Rane, D. Rebollo-Monedero, and B. Girod, “Systematic LossyForward Error Protection for Video Waveforms,” in Proc. IEEE Int. ConfImage Proc., 2003, retain the predictive coding framework but send someextra information to mitigate the effect of drift.

Notwithstanding these advances, there is a need in the art fortechniques that not only enables robust video delivery over wirelesschannels by helping alleviate the effects of packet losses on compressedvideo bit-streams transmitted over such wireless channels, but alsosatisfies the requirements of

-   -   Be able to work with existing compression techniques    -   Have low processing latency    -   Quickly eliminate/reduce the drift between the video encoder and        decoder    -   Require low bitrate when compared to that used by the video        codec

SUMMARY OF EMBODIMENTS

Embodiments disclosed herein address the above stated needs by providingdistributed source coding techniques that improve video codingperformance when channel errors or packet losses occur.

The following terms are used

-   -   Main stream: video data compressed using predictive codecs    -   Main channel: logical channel on which Main stream is        transmitted    -   WyZER stream: Wyner Ziv Error Resilience stream constructed        using distributed coding principles    -   Secondary channel: logical channel on which WyZER stream is        transmitted    -   Main channel encoder: encoder used to encode main stream    -   Main channel decoder: decoder used to decode main stream    -   WyZER encoder: encoder used to encode WyZER stream    -   WyZER decoder: dncoder used to decode WyZER stream    -   Side information: decoded main stream data which is used by        WyZER decoder to reconstruct a frame at a receiver    -   DSC: Distributed Source Coding

Correlation between a video frame at the encoder and a reconstructedvideo frame at the decoder in presence of channel errors is estimated.In one embodiment, the correlation is computed in the discrete cosinetransform (DCT) domain. The correlation can be used in finding cosets asdescribed in U.S. patent application Ser. No. 10/396,982, filed Mar. 24,2003, entitled “Method, Apparatus and System for Encoding and DecodingSide Information for Multimedia Transmission.”

Embodiments of the invention can help alleviate the drift problem inconventional video codecs by WyZER stream as an error resilience stream.Embodiments can help reduce or eliminate drift by sending extrainformation. For example, in one embodiment, a secondary channeltechnique can be used in which WyZER stream can be used to stop driftand improve video quality. The correlation between a predicted sequenceand an original sequence can be used to design codebooks and find thecosets required to represent the original image. This information may besent over another channel, or a secondary channel. In anotherembodiment, the number of cosets required can be communicated to a WyZERdecoder over a secondary channel in the form of header information.

In one embodiment, using DSC, another description of the video sequencecan be sent at a lower rate over a secondary channel which can be usedto correct errors, caused by channel losses, in a reconstructed videoframe at the receiver. The bit-stream sent over the secondary channelcan be decoded with the help of the video frame reconstructed by thepredictive decoder. As a result, the effects of error propagation can bemitigated.

In one embodiment, if the decoder can decode only main stream data, itwill discard the additional information transmitted on the secondarychannel. If the decoder can decode both streams, it will decode the mainstream data first, and then use this information to decode the WyZERstream data and present a final reconstructed image to the user.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a wireless communication system.

FIG. 2(a) is a plot of the peak signal to noise ratio (PSNR) versesframe number for a video sequence encoded with an H.263+ encoder andwith DSC techniques.

FIG. 2(b) is a plot of the PSNR verses frame number for the a videosequence encoded with an H.263+ encoder, with FEC, and with DSCtechniques.

FIG. 2(c) is a plot of the PSNR verses frame number for another videosequence encoded with an H.263+ encoder, with FEC, and with DSCtechniques.

FIG. 2(d) is a plot of PSNR verses error percentage for a video sequenceentitled “Stefan” encoded with an H.263+ encoder, with FEC, and with DSCtechniques.

FIG. 2(e) is a plot of PSNR verses error percentage for a video sequenceentitled “Football” encoded with an H.263+ encoder, with FEC, and withDSC techniques.

FIG. 2(f) is a plot of PSNR verses mean burst length for the “Football”video sequence encoded with FEC and with DSC techniques.

FIG. 3 is a block diagram illustrating portions of a wirelesscommunication system that can implement the DSC techniques.

FIG. 4 is a flow diagram illustrating an embodiment for determiningintra-frame bit allocation to a side-channel encoder.

FIG. 5 is a flow chart illustrating an embodiment of determining amaximum number of partitions of a source codebook that will be used by aside-channel encoder.

FIG. 6 is a block diagram of the WyZER encoder

FIG. 7 is a block diagram of the WyZER decoder

DETAILED DESCRIPTION

Current video coding standards use a predictive framework to achievegood compression performance for video signals. Examples of suchcompression schemes include MPEG-4, H.263+ and H.264. However, when suchcompressed bitstreams are transmitted over error prone channels, thevideo quality is severely damaged, as demonstrated using objective PSNRmetric in FIGS. 2(a)-(c). Examples of error prone channels includecdma2000®, WCDMA, GSM, and other emerging wireless networks. In thisinvention, video data compressed using predictive codecs is called “Mainstream” and the logical channel on which main stream is transmitted iscalled “Main Channel”.

Examples to mitigate the adverse effects of channel errors includeretransmissions of transmission units with errors (RLP retransmissions,hybrid ARQ, etc.), error resilient packetization (data partitioningwhere semantically more important bits in transmissions units areprovisioned with greater error protection, data interleaving, etc.),bitstream syntax to limit the extent of lost source data (usage ofresynchronization markers, reversible variable length coding RVLC, etc.)

In this invention, a separate bitstream is created to be used along withMain stream to improve error resiliency. This stream is constructedusing Wyner-Ziv coding of the video data based on Distributed SourceCoding principles. We call this stream Wyner Ziv Error Resilience stream(WyZER stream). The WyZER stream is transmitted on a “Secondarychannel”, a logical channel that is different from the main channel usedfor video codecs such as MPEG-4, H.263+ and H.264. The video framereconstructed by the predictive video coder serves as theside-information to the WyZER decoder for the purpose of decoding theWyZER stream.

According to another aspect of the invention, techniques are provided toestimate the correlation between the erroneously reconstructed frame andthe frame itself in the discrete cosine transform (DCT) domain usingsome of the concepts detailed in R. Zhang, S. L. Regunathan, and K.Rose, “Optimal intra/inter mode switching for robust video communicationover the Internet,” in Proc. 33rd Ann. Asilomar Conf. on Sig. Syst.Comp., 1999.

According to another aspect of the invention, the WyZER encoder operatesin the DCT domain to take advantage of the energy compaction propertiesof the DCT. Depending upon the rate available for the side-channel andthe correlation estimate, as many DCT coefficients as possible areencoded, starting from the DC and low-frequency coefficients.

If the client receives both the Main stream and the WyZER stream, but isonly capable of decoding the Main stream, (i.e., it only has apredictive decoder, such as an MPEG-4 or H.263+ or H.264 decoder) thenthe client will only decode the Main stream and ignore the WyZER stream.A client with both a predictive decoder and a WyZER decoder, can decodeboth bit-streams and hence, can receive a better quality of decodedvideo than a client with only a predictive decoder.

While the algorithms of A. Sehgal, A. Jagmohan, and N. Ahuja, “Wyner-zivCoding of Video: An Error-Resilient Compression Framework,” IEEE Trans.on Multimedia, vol. 6, pp. 249-258, 2004; and A. Aaron, S. Rane, D.Rebollo-Monedero, and B. Girod, “Systematic Lossy Forward ErrorProtection for Video Waveforms,” in Proc. IEEE Int. Conf. Image Proc.,2003, also use the erroneous frame reconstructed by the predictive coderas the side information at the secondary channel decoder, there are anumber of important differences between the present invention and thetechniques disclosed in these documents. For example, in A. Sehgal, A.Jagmohan, and N. Ahuja, “Wyner-ziv Coding of Video: An Error-ResilientCompression Framework,” IEEE Trans. on Multimedia, vol. 6, pp. 249-258,2004, the authors mark certain frames as “peg” frames. These techniquesallow error propagation to occur from one peg frame to the next. At eachpeg frame, some extra information is sent from the encoder to thedecoder which allows the decoder to correct for the errors in the pegframe.

In contrast, aspects of the present invention stop, or reduce, thedrift, or errors, as soon as possible. In this way, it is possible tomaintain a more or less steady quality which is important from a visualperspective.

On the other hand, in A. Aaron, S. Rane, D. Rebollo-Monedero, and B.Girod, “Systematic Lossy Forward Error Protection for Video Waveforms,”in Proc. IEEE Int. Conf. Image Proc., 2003, an independent descriptionof the video sequence is sent with each frame, but with coarserquantization. This coarser description is coded using a Wyner-Zivframework and can be decoded with the help of the erroneous frame at thedecoder serving as the side-information. Thus, the method of the abovepaper does not attempt to stop the drift since at best it can recoverthe coarse description. The techniques discussed in the above paper alsowork in the pixel domain and not in the DCT domain, and thus gives up onexploiting the spatial correlations.

For source coding with side information, the encoder needs to encode thesource within a distortion constraint, while the decoder needs to beable to decode the encoded codeword subject to the correlation noise Nbetween the source and the side-information. While, the results provenby Wyner and Ziv are non-constructive and asymptotic in nature, a numberof constructive methods to solve this problem have since been proposedwherein the source codebook is partitioned into cosets of a channel codethat is matched to the correlation noise N. The number of partitions orcosets depends on the statistics of N.

FIG. 1 is a system block diagram illustrating aspects of encoded videoover a wireless channel according to one embodiment. The systemcomprises a predictive encoder 10, including a frame buffer, thatcommunicates a bit-stream to a predictive decoder 20 over a wirelessmain channel 25, and a secondary channel (WyZER) encoder 30 thatcommunicates a bit-stream to a secondary channel (WyZER) decoder 40 overa wireless secondary channel 45.

In FIG. 1, the predictive decoder 20 receives the bit-stream from thepredictive encoder 10 over a wireless main channel 25 and reconstructs asignal {tilde over (X)} which is a representation of the video signal Xinput to the encoder 10. The predictive decoder 20 reconstructedbit-stream, {tilde over (X)}, may be affected by errors in transmissionof the bit-stream over the wireless channel. The reconstructed signal{tilde over (X)} serves as side-information to the WyZER decoder 40which outputs {circumflex over (X)} as the final reconstruction.

The input video signal X is the current video signal being encoded bythe predictive encoder 10 in one embodiment, the predictive encoder 10may compress the input video signal and send a compressed bit-streambased on techniques, such as, Motion Estimation (ME) and transforms ofDisplaced Frame Differences (DFDs). The WyZER encoder 30 sends anindependent description of X using a Wyner-Ziv framework to the WyZERdecoder 40.

The WyZER decoder 40 then decodes the bit-stream sent over the secondarychannel, and using the reconstructed signal {tilde over (X)}, outputsthe final reconstruction of the video signal X as {circumflex over (X)}.The final reconstructed signal {circumflex over (X)} will generally be abetter reconstruction of the original video signal X than thereconstructed signal {tilde over (X)} because, as explained furtherbelow, the WyZER decoder 40 may be able to correct for some of theerrors that occur during transmission of the bit-streams over thewireless channels. The final reconstructed signal {tilde over (X)} maybe written back to the frame buffer of the predictive decoder 20.

In this embodiment, for the purpose of designing the WyZER encoder 30,it is assumed that the rate allocated to the WyZER encoder is fixed andthat the correlation structure is X={tilde over (X)}+Z, where {tildeover (X)} represents the original input signal, X represents thereconstruction of the original signal X by a predictive decoder, and Zrepresents the correlation noise vector.

Further, in this embodiment, because operations take place in thediscrete cosine transform (DCT) domain, it is assumed that thecomponents of the correlation noise vector Z are independent. Thecomponents can be modeled as Gaussian distributed because, of alldistributions with the same variance, the Gaussian has the maximumentropy and as such provides a worst case analysis. The WyZER encoder 30needs to find the number of partitions of the source codebook, i.e. thenumber of cosets, for each component in X, for which it needs to knowthe variances of each component of Z. To find these variances,correlation estimation techniques can be utilized as described below.

For example, in one embodiment, the correlation estimation algorithmuses some aspects of the algorithm proposed in R. Zhang, S. L.Regunathan, and K. Rose, “Optimal intra/inter mode switching for robustvideo communication over the Internet,” in Proc. 33rd Ann. AsilomarConf. on Sig. Syst. Comp., 1999. However, unlike the above publication,this embodiment of the present invention is implemented in the DCTdomain. For both the main channel and secondary channel, it is assumedthat packet erasures on the two channels are independent, and thatpackets are independently decodable. It is also assumed that theprobability of losing a packet is equal to the probability of losing theinformation for a block. When a block is lost the predictive decoderreplaces the block with the block in the frame memory at the sameposition in a previous frame. The packet loss probability on the mainchannel and secondary channel are represented as p and q, respectively.

As described in co-pending U.S. patent application Ser. No. 10/396,982,entitled “Method, Apparatus and System for Encoding and Decoding SideInformation for Multimedia Transmission” a WyZER encoder can communicatea coset index to the WyZER decoder. The WyZER decoder then decodes theindex to identify the coset that includes the codeword that is jointlytypical with the side-information. In one embodiment, the conceptsdetailed in S. S. Pradhan and K. Ramchandran, “Distributed source codingusing syndromes (DISCUS): Design and construction,” in Proc. IEEE DataCompression Conf., 1999, can be used. In general the source codebook canbe partitioned into cosets of any channel code.

Detailed block diagram of the WyZER encoder is shown in FIG. 6. Itconsists of three blocks, distortion statistics calculator, cosetencoder and frame statistics calculator. The WyZER encoder uses thecurrent video frame data and the expected reconstruction of the videoframe at the decoder to calculate the statistics of the correlationnoise. These statistics are used by the coset encoder to generate theWyZER bitstream. After WyZER encoding the frame statistics are updatedso they can be used in the next frame.

FIG. 7 shows the block diagram of the WyZER decoder. The WyZER bitsconsisting of the coset bits and the coset index information are usedalong with the side information (from the main decoder) to generate theWyZER decoded output.

Following the notation of R. Zhang, S. L. Regunathan, and K. Rose,“Optimal intra/inter mode switching for robust video communication overthe Internet,” in Proc. 33rd Ann. Asilomar Conf. on Sig. Syst. Comp.,1999, let g_(n) ^(i,k) be the original value of the i^(th) DCTcoefficient in zig-zag scan order in the k^(th) block of the n^(th)frame. And let ĝ_(n) ^(i,k) denote its encoder reconstruction, that isĝ_(n) ^(i,k) is the quantized representation of g_(n) ^(i,k). Let thiscoefficient be re-constructed as {tilde over (g)}_(n) ^(i,k) by thepredictive decoder. The reconstruction {tilde over (g)}_(n) ^(i,k) is arandom variable for the encoder.

Consider the situation when there is no secondary channel. There are twocases the block is either intra (I block) or inter (predictive, or Pblock) coded. An I block is self-contained, that is, it includes all ofthe information needed to render, or display, one complete block ofdata. A P block is not self-contained and will typically containdifferential information relative to the previous frame, such as motionvectors and differential texture information. Consider that p is theprobability that a information unit is lost due to channel errors.Further, assume that this region corresponding to the lost informationunit is filled by the previously reconstructed, co-located video. Then,if the block was intra-coded, $\begin{matrix}{{\overset{\sim}{g}}_{n}^{i,k} = \left\{ \begin{matrix}{{{\hat{g}}_{n}^{i,k}\text{:}\quad{with}\quad{probability}\quad 1} - p} \\{{\overset{\sim}{g}}_{n - 1}^{i,k}\text{:}\quad{with}\quad{probability}\quad p}\end{matrix} \right.} & {{Eq}.\quad(1)}\end{matrix}$And if the block was inter(predictive)-coded, $\begin{matrix}{{\overset{\sim}{g}}_{n}^{i,k} = \left\{ \begin{matrix}{{\overset{\sim}{g}}_{n - 1}^{i,j} + {{\hat{e}}_{n}^{i,k}\text{:}\quad{with}\quad{probability}\quad 1} - p} \\{{\overset{\sim}{g}}_{n - 1}^{i,k}\text{:}\quad{with}\quad{probability}\quad p}\end{matrix} \right.} & {{Eq}.\quad(2)}\end{matrix}$where ê_(n)^(i, k) = ĝ_(n)^(i, k) − ĝ_(n − 1)^(i, j) ⋅ g_(n − 1)^(i, j)is the predictor for g_(n) ^(i,k), i.e. the best predictor for thek^(th) block in the n^(th) frame is the j^(th) block in the (n−1)^(th)frame. When a block is lost, it is simply replaced by the block in thesame position in the previous frame. It should be noted that even if thepredictive bitstream for a particular block is received without errors,{tilde over (g)}_(n) ^(i,k) may not equal ĝ_(n) ^(i,k), i.e., the blockmay nonetheless be in error because there may have been previous errors.The expected distortion for this case is: $\begin{matrix}{d_{n}^{i,k} = {E\left\lfloor \left( {g_{n}^{i,k} - \left( {{\overset{\sim}{g}}_{n - 1}^{i,j} + {\hat{e}}_{n}^{i,k}} \right)} \right)^{2} \right\rfloor}} & {{Eq}.\quad(3)}\end{matrix}$

The expected distortion, d_(n) ^(i,k), can be calculated for all the DCTcoefficients in the block and the WyZER encoder should encode for thiscorrelation. The goal is to refine the erroneously reconstructed DCTcoefficients to their error-free quantized representations to stop thedrift. However, it may not be possible to encode all the coefficientsgiven the rate constraints of the secondary channel. The right approachhere is to use the available rate to refine the subset of DCTcoefficients that would minimize the expected distortion. However, it isquite complex to perform this optimization for every block. Based onoffline tests it was found that most of the time the best strategy is torefine the lower frequency coefficients before refining the higherfrequency coefficients. This also makes intuitive sense from a visualperspective. Thus for the online algorithm, only the m lowest frequencyDCT coefficients that can be accommodated within the given rate for thesecondary channel were transmitted. For these m DCT coefficients, theWyZER decoder will recover their encoder reconstructions at the decoderwhen both the Main and WyZER streams get through. Thus for these m DCTcoefficients, the reconstruction at the decoder will be: $\begin{matrix}{{\overset{\sim}{g}}_{n}^{i,k} = \left\{ \begin{matrix}{{\hat{g}}_{n}^{i,k}\text{:}\quad{with}\quad{probability}\quad\left( {1 - p} \right)\left( {1 - q} \right)} \\{{\overset{\sim}{g}}_{n - 1}^{i,j} + {{\hat{e}}_{n}^{i,k}\text{:}\quad{with}\quad{probability}\quad{q\left( {1 - p} \right)}}} \\{{\overset{\sim}{g}}_{n - 1}^{i,k}\text{:}\quad{with}\quad{probability}\quad p}\end{matrix} \right.} & {{Eq}.\quad(4)}\end{matrix}$

For the remaining DCT coefficients that are not encoded by the WyZERencoder, {tilde over (g)}_(n) ^(i,k) is given by Equation (2) above.

To compute the expected distortion d_(n) ^(i,k) using Equation (3), itis needed to compute$E\left\lfloor {\overset{\sim}{g}}_{n - 1}^{i,j} \right\rfloor\quad{and}\quad E\left\lfloor \left( {\overset{\sim}{g}}_{n - 1}^{i,j} \right)^{2} \right\rfloor$(because ê_(n) ^(i,k) and g_(n) ^(i,k) are already known at theencoder). Equations (1), (2), and (4) can be used to relate$E\left\lfloor {\overset{\sim}{g}}_{n - 1}^{i,j} \right\rfloor\quad{and}\quad E\left\lfloor \left( {\overset{\sim}{g}}_{n - 1}^{i,j} \right)^{2} \right\rfloor\quad{to}\quad E\left\lfloor {\overset{\sim}{g}}_{n - 2}^{i,j} \right\rfloor\quad{and}\quad E{\left\lfloor \left( {\overset{\sim}{g}}_{n - 2}^{i,j} \right)^{2} \right\rfloor.}$Thus the WyZER encoder can compute$E\left\lfloor {\overset{\sim}{g}}_{n - 1}^{i,j} \right\rfloor\quad{and}\quad E\left\lfloor \left( {\overset{\sim}{g}}_{n - 1}^{i,j} \right)^{2} \right\rfloor$using a simple recursive algorithm (similar to that used by R. Zhang, S.L. Regunathan, and K. Rose, “Optimal intra/inter mode switching forrobust video communication over the Internet,” in Proc. 33rd Ann.Asilomar Conf. on Sig. Syst. Comp., 1999) and thus compute d_(n) ^(i,k)using Equation (3). Note that for the purpose of encoding, thepredictive encoder divides the frame into a grid of non-overlappingspatial blocks. If the predictor block (the j^(th) block in the(n−1)^(th) frame in the above analysis) does not align with this grid ofnon-overlapping blocks, the WyZER encoder would not have stored thevalues of$E\left\lfloor {\overset{\sim}{g}}_{n - 1}^{i,j} \right\rfloor\quad{and}\quad E\left\lfloor \left( {\overset{\sim}{g}}_{n - 1}^{i,j} \right)^{2} \right\rfloor$while encoding the (n−1)^(th) frame (since j is not a valid block in the(n−1)^(th) frame). In this case, the block with the maximum overlap tothe j^(th) block in the (n−1)^(th) frame that is a valid block is usedin calculation. Instead, a weighted average of the corresponding blocksin the (n−1)^(th) frame overlapping the j^(th) block can also be used.

The correlation noise estimate (d_(n) ^(i,k)) determines the number ofpartitions of the source codebook or number of cosets. This information,the number of cosets, may be communicated to the WyZER decoder over thesecondary channel in the form of header information. To restrict thesize of the header, the possible value that the number of cosets cantake, may be limited, for each coefficient. The limit on the possiblevalues may be based on extensive tests.

FIGS. 2(a)-(f) are graphs of simulation results for various performancecomparisons that demonstrate the effectiveness of the WyZER codecdescribed above. For the simulations, standard video sequences, that arewell known to those in the art, were encoded with an H.263+ coder usedas the predictive video codec. The secondary channel is allocated about30% of the rate on the main channel.

FIG. 2(a) is a plot of the peak signal to noise ratio (PSNR) versesframe number for a video sequence encoded with an H.263+ encoder 202 andthe DSC techniques 204 described above. In FIG. 2(a), the 3rd frame ofthe standard “Flower Garden” video sequence (352×240, 15 fps, 1 intraframe followed by 29 inter frames) was dropped. To make the comparisonfair, H.263+ is compensated with the same amount of extra rate. FIG.2(a) shows that with the DSC techniques, the PSNR increases steadilyfollowing the dropped frame, as the drift is corrected, to about 7-8 dBbetter than H.263+ by the end of the thirty frames sequence.

The DSC techniques described above were also tested using a wirelesschannel simulator that adds packet errors to multimedia data streamstransmitted over wireless networks conforming to the CDMA 2000 1×standard 5. For these tests, the DSC technique was modified to allow aportion of the rate on the secondary channel to be allocated to forwardcorrecting codes (FECs) and the remaining portion to be allocated to theWyZER stream. A motivation for this, is that the WyZER stream cannotrecover from loss instantaneously (see FIG. 2(a)), unlike in the casewhen FEC is used and the number of erasures is less than the FEC'scorrection capability. This is important from both visual and PSNRperspectives. However, the entire rate on the side-channel is notallocated to FECs because, as mentioned before, it cannot guaranteeerror recovery. This is especially true for wireless channels whichoften have significant error bursts.

FIG. 2(b) is a plot of the PSNR verses frame number for the a videosequence encoded with an H.263+ encoder 212, FEC 214, and a DSCtechnique 216 described above. The standard video sequence used ingenerating FIG. 2(b) was the “Stefan” video sequence (both 352×240, 15fps, 1 GOP). In FIG. 2(b) the three different encoding techniquescompared are:

-   -   1) H.263+ encoded at a rate equal to the total allocated to the        main and secondary channels (curve 212),    -   2) Full secondary channel rate allocated to FEC (we use        Reed-Solomon codes) (curve 214), and    -   3) Proposed algorithm, modified by allocating part of the rate        on the secondary channel to FEC (again RS codes are used) (curve        216).

For both the FEC and DSC techniques, (2) and (3) above, the latencyconstraint is 1 frame. Tests were conducted to find the optimal ratepartition between FEC and the WyZER stream in the case of (3). In mostcases it was best to allocate roughly equal rates to FEC and the WyZERstream and this is the setup for the results presented here. The Mainand WyZER streams are sent over the same (simulated) wireless channel.

In the case of the Stefan sequence shown in FIG. 2(b), the proposedWyZER 216 approach outperforms the others, achieving an average PSNRthat is 2.9 dB higher than the FEC-only case 214, and 5.2 dB higher thanbaseline H.263+, (curve 212).

FIG. 2(c) is a plot of the PSNR verses frame number for another videosequence encoded with an H.263+ encoder 222, FEC 224, and a WyZERtechnique 226 described above. The standard video sequence used ingenerating FIG. 2(c) was the “Football” video sequence (both 352×240, 15fps, 1 GOP). FIG. 2(c) show the typical performance of the threeencoding schemes for the Stefan and Football sequences (both 352×240, 15fps, 1 GOP), for a packet loss rate of 8.5%.

In FIG. 2(c), the PSNR of the proposed DSC technique 226 takes two dipsin Frame 23 and 26, but in both cases it recovers quickly. The averagePSNR for the WyZER technique 226 for this test is 3.1 dB higher than theFEC only case 224, and 5.6 dB higher than baseline H.263+ (curve 222).

FIG. 2(d) is a plot of PSNR verses error percentage for the videosequence “Stefan” encoded with an H.263+ encoder 232, FEC 234, and a DSCtechnique 236. FIG. 2(e) is a plot of PSNR verses error percentage forthe video sequence “Football” encoded with an H.263+ encoder 242, FEC244, and a DSC technique 246. As illustrated in FIGS. 2(d) and 2(e), forthe typical performance of the three methods of encoding, the methods ofthe present invention consistently outperform the other two. Thoughresults are presented only for SIF (352×240) sequences, similarbehaviors are observed for video sequences of other spatial sizes, suchas, QCIF, CIF.

Experiments have also been conducted to study the effect of burst lengthon performance. FIG. 2(f) is a plot of PSNR verses mean burst length forthe “Football” video sequence (176×144, 15 fps, 30 frames) encoded withFEC 252 and DSC 254. As illustrated in FIG. 2(f), when mean burst lengthis greater than 0.6, the techniques according to the present invention254 outperform the FEC-only 252 case, but when the burst length issmaller than 0.6, it is inferior to the FEC only case.

Thus, simulation results using techniques described above showsignificant gains in performance over conventional error protectionschemes such as Forward Error Correction codes under reasonable latencyconstraints.

The DSC techniques described may operate with a number of wirelessdevices and wireless standards. Examples of wireless devices that canimplement the DSC techniques described include cellular telephones,wireless communication enabled personal computers, and personal digitalassistants (PDA), and other wireless devices. Example of wirelessstandards that the DSC techniques described can be operated on includestandards referred to as Global System for Mobile Communication (GSM),General Packet Radio Service (GPRS), Enhanced Data GSM Environment(EDGE), TIA/EIA-95-B (IS-95), TIA/EIA-98-C (IS-98), CDMA2000, WidebandCDMA (WCDMA), and others.

FIG. 3 is a block diagram illustrating portions of a wirelesscommunication system that can implement the DSC techniques. As shown inFIG. 1, the wireless communication system includes a first wirelesscommunication device (WCD) 302, also referred to as a mobile station(MS). The wireless communication system includes a second wirelessdevice 304, that can be part of a wireless infrastructure, anotherwireless device, or a landline device that is connected to a wirelessinfrastructure.

The first wireless device 302 includes a WyZER encoder 306, a WyZERdecoder 308, a transmitter 310 and a receiver 312. The second wirelessdevice 304 includes a WyZER encoder 320, a WyZER decoder 322, atransmitter 324 and a receiver 324. The second wireless device 304 mayreceive an input signal X₁, for example, a video signal. The inputsignal X₁ is connected to the DSC encoder 320. Included within the DSCencoder 320 there is a predictive encoder 330 and a WyZER encoder 332.The input signal is encoded in accordance with the DSC techniquesdescribed, and a Main stream and WyZER stream are output from thepredictive encoder 320 and the WyZER encoder 332 to the transmitter 324.

The Main and WyZER streams are transmitted over a wireless communicationchannel (multiple logical channels can be used to transmit the twostreams) to the receiver 312 in the first wireless device 302. The Mainstream is output from the receiver 312 to a predictive decoder 334within the DSC decoder 308 in the first wireless device 302. The WyZERstream is output from the receiver 312 to a WyZER decoder 336. Theoutput {tilde over (X)}₁ of the predictive decoder 334 is also input tothe WyZER decoder 336. In accordance with the DSC techniques describedthe predictive and WyZER decoders cooperate to produce and output areconstruction signal {circumflex over (X)}₁ of the input signal X₁.

In a similar manner to that just described, the first wireless devicemay receive an input signal X₂ that is encoded by a predictive encoder340 and a WyZER encoder 342 included within the DSC encoder 306 in thefirst wireless device 302. Main and WyZER streams are output from theDSC encoder 306 to the transmitter 310. The receiver 326 in the secondwireless device 304 receives the bit-streams and outputs the predictivebit-stream to a predictive decoder 344 and the WyZER stream to a WyZERdecoder 346 in the DSC decoder 322 in the second wireless device 304.The output {tilde over (X)}₂ of the predictive decoder 344 is also inputto the WyZER decoder 346. In accordance with the DSC techniquesdescribed the predictive and WyZER decoders cooperate to produce andoutput a reconstruction signal {circumflex over (X)}₂ of the inputsignal X₂.

In another embodiment, a wireless device may include only a DSC encoderor only a DSC decoder. For example, if a device is configured tobroadcast, or transmit, encoded data but not to receive encoded data,then it may have a DSC encoder to encode the broadcast data but it maynot have a DSC decoder because it does not receive encoded data.Likewise, a device configured to receive and decode a signal, but not totransmit an encoded signal, may include a decoder but not an encoder. Anexample of this type of system would be a broadcast system, such as avideo broadcast system, where the broadcaster transmits encoded data toat least one user, and typically to many users, but the users do nottransmit encoded data back to the broadcaster. In this example, thebroadcaster wireless device would include a DSC encoder to encode thebroadcast data, and the user wireless device would include a DSC decoderto decode the received encoded broadcast.

FIG. 4 is a flow diagram illustrating an embodiment for determiningintra-frame bit allocation to a WyZER encoder. Flow begins in block 402where an entire frame of data, that is partitioned into data blocks, isexamined. Flow continues to block 404 where it is determined which ofthe data blocks should be protected. For example, the data blocks may be“ranked” based on the deleterious effect that the loss of the individualdata block would have on a reconstruction of the frame of data at areceiver if the particular block is lost or corrupted. The blocks whoseloss would be more harmful to the reconstruction having a higher rank.

Flow continues to block 406 where an amount of data to be allocated to aWyZER encoder is determined. In general, it is desirable to allocate aminimum amount of data allocated to the secondary channel because theamount of data allocated has to be transmitted over the secondarychannel thereby consuming additional system resources. Thus, more datawill be allocated to, and transmitted over, the secondary channeldepending on how desirable it is to protect a particular data block. Forexample, if a data block is “ranked” high, more data may be allocatedto, and transmitted over, the secondary channel for that block than to ablock that is “ranked” lower.

FIG. 5 is a flow chart illustrating an embodiment of determining amaximum number of partitions of a source codebook that will be used by aWyZER encoder. Flow begins in block 502 where a correlation noiseestimate is determined. For example, the correlation noise of atransform coefficient may be determined for the case where a predictivebit-stream, representing a block of data, is successfully transmittedfrom a predictive encoder to a predictive decoder. Even though the blockis successfully transmitted, the decoded block may have errors due toerrors in previous blocks. Flow continues to block 504 where the numberof partitions of a source codebook, used to represent the data block, isdetermined. The number of partitions of the source codebook is alsoreferred to as coset.

In one embodiment, the number of cosets may be communicated to a WyZERdecoder over a wireless secondary channel communication in a header ofthe WyZER stream.

Those of skill in the art will understand that information and signalsmay be represented using any of a variety of different technologies andtechniques. For example, data, instructions, commands, information,signals, bits, symbols, and chips that may be referenced throughout theabove description may be represented by voltages, currents,electromagnetic waves, magnetic fields or particles, optical fields orparticles, or any combination thereof.

Those of skill will further appreciate that the various illustrativelogical blocks, modules, circuits, and algorithm steps described inconnection with the embodiments disclosed herein may be implemented aselectronic hardware, computer software, or combinations of both. Toclearly illustrate this interchangeability of hardware and software,various illustrative components, blocks, modules, circuits, and stepshave been described above generally in terms of their functionality.Whether such functionality is implemented as hardware or softwaredepends upon the particular application and design constraints imposedon the overall system. Skilled artisans may implement the describedfunctionality in varying ways for each particular application, but suchimplementation decisions should not be interpreted as causing adeparture from the scope of the present invention.

The various illustrative logical blocks, modules, and circuits describedin connection with the embodiments disclosed herein may be implementedor performed with a general purpose processor, a digital signalprocessor (DSP), an application specific integrated circuit (ASIC), afield programmable gate array (FPGA) or other programmable logic device,discrete gate or transistor logic, discrete hardware components, or anycombination thereof designed to perform the functions described herein.A general purpose processor may be a microprocessor, but in thealternative, the processor may be any conventional processor,controller, microcontroller, or state machine. A processor may also beimplemented as a combination of computing devices, e.g., a combinationof a DSP and a microprocessor, a plurality of microprocessors, one ormore microprocessors in conjunction with a DSP core, or any other suchconfiguration.

The steps of a method or algorithm described in connection with theembodiments disclosed herein may be embodied directly in hardware, in asoftware module executed by a processor, or in a combination of the two.A software module may reside in RAM memory, flash memory, ROM memory,EPROM memory, EEPROM memory, registers, hard disk, a removable disk, aCD-ROM, or any other form of storage medium known in the art. Anexemplary storage medium is coupled to the processor such the processorcan read information from, and write information to, the storage medium.In the alternative, the storage medium may be integral to the processor.The processor and the storage medium may reside in an ASIC. The ASIC mayreside in a user terminal. In the alternative, the processor and thestorage medium may reside as discrete components in a user terminal.

The previous description of the disclosed embodiments is provided toenable any person skilled in the art to make or use the presentinvention. Various modifications to these embodiments will be readilyapparent to those skilled in the art, and the generic principles definedherein may be applied to other embodiments without departing from thespirit or scope of the invention. Thus, the present invention is notintended to be limited to the embodiments shown herein but is to beaccorded the widest scope consistent with the principles and novelfeatures disclosed herein.

1. A wireless communication device comprising: a predictive encoderconfigured to receive an input signal, encode the signal according to apredictive encoding standard, and to output a predictive encodedbit-stream; a secondary channel encoder configured to receive the inputsignal, encode the signal according to a secondary channel encodingstandard, and to output a secondary channel encoded bit-stream.
 2. Awireless communication device as defined in claim 1, wherein thepredictive encoded bit-stream is transmitted over a main communicationchannel.
 3. A wireless communication device as defined in claim 1,wherein the secondary channel encoded bit-stream is transmitted over asecondary channel communication channel.
 4. A wireless communicationdevice as defined in claim 1, wherein the predictive encoding standardis a standard compatible with MPEG-4 standard.
 5. A wirelesscommunication device as defined in claim 1, wherein the predictiveencoding standard is a standard compatible with H.26x standard.
 6. Awireless communication device as defined in claim 1, wherein thesecondary channel encoding standard is a standard compatible with WynerZiv techniques.
 7. A wireless communication device as defined in claim1, wherein the input signal is a video signal.
 8. A wirelesscommunication device as defined in claim 1, wherein the input signalcomprises intra-coded blocks of data and inter-coded blocks of data. 9.A wireless communication device as defined in claim 8, wherein Wyner Zivtechniques are applied to the inter-coded data blocks.
 10. A wirelesscommunication device as defined in claim 1, wherein the secondarychannel encoder will encode the input signal using a predeterminednumber of cosets.
 11. A wireless communication device as defined inclaim 10, wherein the number of predetermined cosets is included withina header of the secondary channel encoded bit-stream.
 12. A wirelesscommunication device comprising: a predictive decoder configured toreceive a bit-stream representation of an original signal, decode thebit stream according to a predictive decoding standard, and to output areconstructed signal; a secondary channel decoder configured to receivea bit-stream representation of the original signal and the reconstructedsignal, decode the bit-stream according to a secondary channel decodingstandard, and to combine the decoded secondary channel bit stream andthe reconstructed signal to generate and output a final reconstructionof the original signal.
 13. A wireless communication device as definedin claim 12, wherein the bit-stream decoded by the predictive decoder isreceived over a main communication channel.
 14. A wireless communicationdevice as defined in claim 12, wherein the bit-stream decoded by thesecondary channel decoder is received over a secondary channelcommunication channel.
 15. A wireless communication device as defined inclaim 12, wherein the predictive decoding standard is a standardcompatible with MPEG-4 standard.
 16. A wireless communication device asdefined in claim 12, wherein the predictive decoding standard is astandard compatible with H.26x standard.
 17. A wireless communicationdevice as defined in claim 12, wherein the secondary channel decodingstandard is a standard compatible with Wyner Ziv techniques.
 18. Awireless communication device as defined in claim 12, wherein theoriginal signal is a video signal.
 19. A wireless communication deviceas defined in claim 12, wherein the original signal comprisesintra-coded blocks of data and inter-coded blocks of data.
 20. Awireless communication device as defined in claim 19, wherein Wyner-Zivtechniques are applied to the inter-coded data blocks.
 21. A wirelesscommunication device as defined in claim 12, wherein the secondarychannel decoder will decode the secondary channel bit-stream using apredetermined number of cosets.
 22. A wireless communication device asdefined in claim 21, wherein the number of predetermined cosets isincluded within a header of the secondary channel encoded bit-stream.23. A wireless communication device comprising: an encoder comprising: apredictive encoder configured to receive an input signal, encode thesignal according to a predictive encoding standard, and to output apredictive encoded bit-stream; a secondary channel encoder configured toreceive the input signal, encode the signal according to a secondarychannel encoding standard, and to output a secondary channel encodedbit-stream. a decoder comprising: a predictive decoder configured toreceive a bit-stream, decode the bit stream according to the predictivedecoding standard, and to output a reconstructed signal; and a secondarychannel decoder configured to receive a bit-stream and the reconstructedsignal, decode the bit-stream according to a secondary channel decodingstandard, and to combine the decoded bit-stream and the reconstructedsignal to generate and output a final reconstruction of an originalsignal.
 24. A wireless communication device as defined in claim 23,wherein the predictive decoding standard is a standard compatible withMPEG-4 standard.
 25. A wireless communication device as defined in claim23, wherein the predictive decoding standard is a standard compatiblewith H.26x standard.
 26. A wireless communication device as defined inclaim 23, wherein the secondary channel decoding standard is a standardcompatible with Wyner Ziv techniques.
 27. A wireless communicationdevice as defined in claim 23, wherein the input signal is a videosignal.
 28. A wireless communication device as defined in claim 23,wherein the wireless communication device is a cell phone.
 29. Awireless communication device as defined in claim 23, wherein thewireless device is part of a wireless infrastructure.
 30. A wirelesscommunication system comprising: a first wireless device comprising: apredictive encoder configured to receive an input signal, encode thesignal according to a predictive encoding standard, and to output apredictive encoded bit-stream representation of the input signal; asecondary channel encoder configured to receive the input signal, encodethe signal according to a secondary channel encoding standard, and tooutput a secondary channel encoded bit-stream representation of theinput signal. a second wireless device comprising: a predictive decoderconfigured to receive the bit-stream output by the predictive encoder,decode the bit-stream according to the predictive decoding standard, andto output a reconstruction of the input signal; and a secondary channeldecoder configured to receive the bit-stream output by the secondarychannel encoder, decode the bit-stream according to a secondary channeldecoding standard, and to combine the decoded secondary channel bitstream and the reconstructed signal to generate and output a finalreconstruction of the input signal.
 31. A wireless communication systemas defined in claim 30, wherein the predictive decoding standard is astandard compatible with MPEG-4 standard.
 32. A wireless communicationsystem as defined in claim 30, wherein the predictive decoding standardis a standard compatible with H.26x standard.
 33. A wirelesscommunication system as defined in claim 30, wherein the secondarychannel decoding standard is a standard compatible with Wyner Zivtechniques.
 34. A wireless communication system as defined in claim 30,wherein the first wireless communication device is a cell phone.
 35. Awireless communication system as defined in claim 30, wherein the firstwireless device is part of a wireless communication infrastructuredevice.
 36. A wireless communication system as defined in claim 30,wherein the second wireless communication device is a cell phone.
 37. Awireless communication system as defined in claim 30, wherein the secondwireless device is part of a wireless communication infrastructuredevice.
 38. A method of encoding data, the method comprising: receivingan input signal; encoding the signal according to a predictive encodingstandard, and outputting a predictive encoded bit-stream; and encodingthe signal according to a secondary channel encoding standard, and tooutputting a secondary channel encoded bit-stream.
 39. A method ofencoding as defined in claim 38, wherein the predictive encodingstandard is a standard compatible with MPEG-4 standard.
 40. A method ofencoding as defined in claim 38, wherein the predictive encodingstandard is a standard compatible with H.26x standard.
 41. A method ofencoding as defined in claim 38, wherein the secondary channel encodingstandard is a standard compatible with Wyner Ziv techniques.
 42. Amethod of encoding as defined in claim 38, wherein the input signal is avideo signal.
 43. A method of encoding as defined in claim 38, whereinthe input signal comprises intra-coded blocks of data and inter-codedblocks of data.
 44. A method of encoding as defined in claim 43, whereinWyner Ziv techniques are applied to the inter-coded data blocks.
 45. Amethod of encoding as defined in claim 38, wherein the secondary channelencoder will encode the input signal using a predetermined number ofcosets.
 46. A method of encoding as defined in claim 45, wherein thenumber of predetermined cosets is included within a header of thesecondary channel encoded bit-stream.
 47. A method of decoding data, themethod comprising: receiving a predictive encoded bit-streamrepresentation of an original signal; decoding the predictive encodedbit stream according to a predictive decoding standard, and to output areconstructed signal; receiving a secondary channel encoded bit-streamrepresentation of the original signal and the reconstructed signal; anddecoding the secondary channel encoded bit-stream according to asecondary channel encoding standard, and combining the decoded secondarychannel bit stream and the reconstructed signal to generate and output afinal reconstruction of the original signal.
 48. A method of decoding asdefined in claim 47, wherein the predictive decoding standard is astandard compatible with MPEG-4 standard.
 49. A method of decoding asdefined in claim 47, wherein the predictive decoding standard is astandard compatible with H.26x standard.
 50. A method of decoding asdefined in claim 47, wherein the secondary channel decoding standard isa standard compatible with Wyner Ziv techniques.
 51. A method ofdecoding as defined in claim 47, wherein the original signal is a videosignal.
 52. A method of decoding as defined in claim 47, wherein theoriginal signal comprises intra-coded blocks of data and inter-codedblocks of data.
 53. A method of decoding as defined in claim 52, whereinWyner Ziv techniques are applied to the inter-coded data blocks.
 54. Amethod of decoding as defined in claim 47, wherein the secondary channeldecoder will decode the secondary channel bit-stream using apredetermined number of cosets.
 55. A method of decoding as defined inclaim 54, wherein the number of predetermined cosets is included withina header of the secondary channel encoded bit-stream.
 56. A method ofdetermining intra-frame bit allocation to a secondary channel encoder,the method comprising: examining an entire frame of data; determiningwhich blocks of data within the frame of data need protection; anddetermining an amount of data within the frame to be allocated to, andtransmitted by, a secondary channel based upon the blocks of data thatneed protection.
 57. A method of determining partitions of a sourcecodebook, the method comprising: determining a correlation noiseestimate; and determining a number of partitions of a source cookbookbased upon the estimate of correlation noise estimate.
 58. A computerreadable media embodying a method of encoding data, the methodcomprising: receiving an input signal; encoding the signal according toa predictive encoding standard, and outputting a predictive encodedbit-stream; and encoding the signal according to a secondary channelencoding standard, and to outputting a secondary channel encodedbit-stream.
 59. A computer readable media embodying a method of decodingdata, the method comprising: receiving a first bit-stream representationof an original signal; decoding the first bit stream according to apredictive decoding standard, and to output a reconstructed signal;receiving a second bit-stream representation of the original signal andthe reconstructed signal; and decoding the second bit-stream accordingto a secondary channel decoding standard, and combining the secondarychannel decoded bit stream and the reconstructed signal to generate andoutput a final reconstruction of the original signal.
 60. A method asdefined in claim 59, wherein the first bit-stream is encoded accordingto a predictive encoding standard.
 61. A method as defined in claim 59,wherein the second bit-stream is encoded according to a secondarychannel encoding standard.
 62. A wireless communication devicecomprising: means for receiving an input signal; means for encoding thesignal according to a predictive encoding standard, and outputting apredictive encoded bit-stream; and means for encoding the signalaccording to a secondary channel encoding standard, and to outputting asecondary channel encoded bit-stream.
 63. A wireless communicationdevice comprising: means for receiving a first bit-stream representationof an original signal; means for decoding the bit stream according to apredictive decoding standard, and to output a reconstructed signal;means for receiving a second bit-stream representation of the originalsignal and the reconstructed signal; and means for decoding the secondbit-stream according to a secondary channel encoding standard, andcombining the secondary channel decoded bit stream and the reconstructedsignal to generate and output a final reconstruction of the originalsignal.